home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / LANG / C / LIB / DESK / CORE / Desk / h / PopUp < prev    next >
Text File  |  1996-05-21  |  3KB  |  152 lines

  1.  
  2. #ifndef __Desk_PopUp_h
  3. #define __Desk_PopUp_h
  4. #ifdef __cplusplus
  5. extern "C" {
  6. #endif
  7. #ifndef __Desk_Wimp_h
  8. #include "Desk.Wimp.h"
  9. #endif
  10. typedef int Desk_popup_handle;
  11. #define Desk_popup_ISLEAF (0x01)
  12. #define Desk_popup_ISSTATIC (0x02)
  13. #define Desk_popup_STANDALONE (0x00)
  14. #define Desk_popup_MENULEAF (0x01)
  15. #define Desk_popup_STATIC (0x02)
  16. typedef struct
  17. {
  18. int mul, div;
  19. int minmul, maxmul;
  20. int mindiv, maxdiv;
  21. } Desk_popup_magnify;
  22. typedef struct
  23. {
  24. char appname[32];
  25. char purpose[32];
  26. char author[32];
  27. char version[32];
  28. } Desk_popup_proginfo;
  29. typedef struct
  30. {
  31. struct
  32. {
  33. unsigned int cancel : 1; 
  34. unsigned int ok : 1; 
  35. unsigned int reserved : 6;
  36. unsigned int userhandle : 24; 
  37. } flags;
  38. char oktext[12]; 
  39. char canceltext[12]; 
  40. char appname[12]; 
  41. char message[188]; 
  42. } Desk_popup_report;
  43. typedef struct
  44. {
  45. char iconsprite[12]; 
  46. char filename[212]; 
  47. } Desk_popup_saveas; 
  48. typedef struct
  49. {
  50. struct
  51. unsigned int wasdragged : 1; 
  52. unsigned int shiftdown : 1; 
  53. unsigned int reserved : 30;
  54. } flags;
  55. int reserved;
  56. char filename[212]; 
  57. } Desk_popup_saveasreturn;
  58. typedef struct
  59. {
  60. char colour; 
  61. } Desk_popup_wimpcolour;
  62. typedef struct
  63. {
  64. unsigned int transparency : 8;
  65. unsigned int red : 8;
  66. unsigned int green : 8;
  67. unsigned int blue : 8;
  68. } Desk_colour_rgb;
  69. typedef struct
  70. {
  71. unsigned int value : 8; 
  72. unsigned int saturation : 8; 
  73. unsigned int hue : 16; 
  74. } Desk_colour_hsv;
  75. typedef struct
  76. {
  77. unsigned int key : 8;
  78. unsigned int yellow : 8;
  79. unsigned int magenta : 8;
  80. unsigned int cyan : 8;
  81. } Desk_colour_cmyk;
  82. #define Desk_popuptc_RGB 0
  83. #define Desk_popuptc_HSV 1
  84. #define Desk_popuptc_CMYK 2
  85. #define Desk_popuptc_TRANSPARENT0 0x00000
  86. #define Desk_popuptc_TRANSPARENT1 0x10000
  87. #define Desk_popuptc_TRANSPARENT256 0x20000
  88. typedef struct
  89. {
  90. int colourmodel; 
  91. union
  92. {
  93. Desk_colour_rgb rgb;
  94. Desk_colour_hsv hsv;
  95. Desk_colour_cmyk cmyk;
  96. } colour;
  97. int transparency; 
  98. } Desk_popup_truecolour;
  99. typedef struct
  100. {
  101. char name[12]; 
  102. Desk_wimp_point openpos; 
  103. char flags; 
  104. char reserved1, reserved2, reserved3;
  105. } Desk_popup_header;
  106. typedef union
  107. {
  108. Desk_popup_magnify magnify;
  109. Desk_popup_proginfo proginfo;
  110. Desk_popup_report report;
  111. Desk_popup_saveas saveas;
  112. Desk_popup_wimpcolour wimpcolour;
  113. Desk_popup_truecolour truecolour;
  114. } Desk_popup_data; 
  115. typedef struct
  116. {
  117. Desk_popup_magnify magnify;
  118. Desk_popup_report report;
  119. Desk_popup_saveas saveasreturn;
  120. Desk_popup_wimpcolour wimpcolour;
  121. Desk_popup_truecolour truecolour;
  122. } Desk_popup_returndata; 
  123. typedef struct
  124. {
  125. Desk_window_handle window; 
  126. Desk_wimp_point openpos; 
  127. } Desk_message_popuprequest;
  128. typedef struct
  129. {
  130. Desk_popup_handle handle; 
  131. char name[12]; 
  132. Desk_popup_returndata data; 
  133. } Desk_message_popupstate;
  134. typedef struct
  135. {
  136. Desk_popup_header header;
  137. Desk_popup_data data;
  138. } Desk_popup_block; 
  139. extern Desk_popup_handle Desk_PopUp_Open(Desk_popup_block *params);
  140. extern void Desk_PopUp_Close(Desk_popup_handle handle);
  141. extern Desk_popup_handle Desk_PopUp_ShowMenuLeaf(char *name, Desk_popup_data *definition,
  142. Desk_message_menuwarn *msg);
  143. extern Desk_popup_handle Desk_PopUp_ShowPtr(char *name, Desk_bool isstatic,
  144. Desk_popup_data *definition);
  145. #define Desk_PopUp_ShowStandalone(N, D) Desk_PopUp_ShowPtr(N, 0, D)
  146. #define Desk_PopUp_ShowStatic(N, D) Desk_PopUp_ShowPtr(N, 1, D)
  147. #ifdef __cplusplus
  148. }
  149. #endif
  150. #endif
  151.